package com.xmmj.baselibrary.base.activity.mvvm

interface IBaseView {
    /**
     * 显示loading
     *
     * @param cancelable 是否触摸可取消
     */
    fun showLoading(cancelable: Boolean)

    /**
     * 隐藏loading
     */
    fun hideLoading()

    /**
     * 吐司
     *
     * @param msg 消息文案
     */
    fun toast(msg: String?)

    /**
     * 重新登录
     */
    fun onReLogin()

    /**
     * 发起请求
     */
    fun onRequest()

    /**
     * 显示错误提示
     *
     * @param imageId   图片
     * @param errorText 错误提示
     * @param btnText   按钮文案
     */
    fun showError(imageId: Int, errorText: String?, btnText: String?)

    /**
     * 显示空提示
     *
     * @param isShow   是否显示
     * @param imageId  图片
     * @param hintText 提示文案
     */
    fun showEmpty(isShow: Boolean, imageId: Int, hintText: String?)

    /**
     * 刷新结束
     */
    fun finishRefresh()

    /**
     * 加载更多结束
     *
     * @param noMoreData
     */
    fun finishLoadMore(noMoreData: Boolean)
}